Bittioperaatio

Bittioperaatio (engl. bitwise operation) on ohjelmointikielissä bittioperaattoreilla tehtäviä toimintoja.[1]

Bittitason operaattorit ja niiden vastineet C-kielessä ovat:[1][2]

AND (&): jos molemmat bitit ovat 1, tulos on 1, muutoin 0:

    0101 
AND 0011
  = 0001

OR (|): jos jompikumpi bitti on 1, tulos on 1, muutoin 0:

    0101
 OR 0011
  = 0111

XOR (^): jos vain toinen bitti on 1, tulos on 1. Jos molemmat bitit ovat samat, tulos on 0:

    0101
XOR 0011
  = 0110

Komplementti eli NOT (~): vaihtaa kaikki ykköset nolliksi ja nollat ykköseksi:

NOT 0111
  = 1000

Siirto vasemmalle (<<): siirtää bittejä vasemmalle, täytetään nollalla vapautuvat:

 << 0110
  = 1100

Siirto oikealle (>>): siirtää bittejä oikealle, täyttö riippuu koneesta (yleensä riippuu etumerkistä):

 >> 0110
  = 0011
  1. a b Bitwise Operators cs.fsu.edu. Viitattu 16.2.2020. (englanniksi)
  2. Oualline, Steve: Practical C Programming, s. 158. (Third edition) O'Reilly, 1997. ISBN 1-56592-306-5 (englanniksi)

Developed by StudentB